package com.huanf.domain.pojo;

import cn.hutool.json.JSONUtil;
import com.huanf.utils.MyHttpUtil;
import com.huanf.utils.MyTokenUtil;

import java.util.ArrayList;
import java.util.List;


/**
 * 只有测试号才能有自定义菜单的功能，所以AppID和secretID要填写测试号的
 */
public class MenuTest {
    public static void main(String[] args) {
        //创建一级菜单
        MenuButton button = new MenuButton();
        List<MenuAbstractButton> buttons = new ArrayList<>();
        //一级菜单中的第一个按钮
        MenuClickButton clickButton = new MenuClickButton("位置");
        clickButton.setKey("1");
        //一级菜单中的第二个按钮
        MenuViewButton viewButton = new MenuViewButton("首页", "https://baidu.com");
        //一级菜单中的第三个按钮(二级菜单)
        MenuSubButton subButton = new MenuSubButton("更多");
        ArrayList<MenuAbstractButton> subButtons  = new ArrayList<>();
        //二级菜单的第一个按钮
        subButtons.add(new MenuViewButton("01按钮","https://baidu.com"));
        //二级菜单的第二个按钮
        subButtons.add(new MenuPhotoOrAlbum("02按钮","2"));
        subButton.setSub_button(subButtons);
        //把一级菜单中的三个按钮添加进集合
        buttons.add(clickButton);
        buttons.add(viewButton);
        buttons.add(subButton);
        //把集合添加到一级菜单中
        button.setButton(buttons);

        //把封装好的数据转换成json字符串，false表示不跳过空值
        String json = JSONUtil.parseObj(button, false).toString();

        //发送请求调用微信提供的api
        String url = String.format("https://api.weixin.qq.com/cgi-bin/menu/create?access_token=%s", MyTokenUtil.getToken());
        //微信那边返回给我们的数据
        String result = MyHttpUtil.doPost(url, json);
        System.out.println(result); //如果返回{"errcode":0,"errmsg":"ok"}，就说明成功生效了

    }
}
